package com.jeeplus.test.jlnu.student.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.jeeplus.test.jlnu.student.domain.entity.BkStudentFamily;
import com.jeeplus.test.jlnu.student.domain.entity.BkbsssStudentObtain;
import com.jeeplus.test.jlnu.student.domain.vo.BkbsssStudentObtainReqVo;
import com.jeeplus.test.jlnu.student.domain.vo.BsssStudentGraduateVo;
import com.jeeplus.test.jlnu.student.dto.command.UpdateStudentObtainBatchCommand;
import org.apache.ibatis.annotations.Param;
import org.springframework.http.ResponseEntity;

import java.util.List;

public interface BkbsssStudentObtainService extends IService<BkbsssStudentObtain> {
    BkbsssStudentObtain getBkbsssStudentObtain(String studentId,String flag);


    Boolean bkbsssStudentObtainUpdate(BsssStudentGraduateVo bkbsssStudentObtain);

    boolean batchUpdate(BkbsssStudentObtainReqVo bkbsssStudentObtainReqVo);

    void updateBatch(UpdateStudentObtainBatchCommand updateStudentObtainBatchCommand);

    boolean saveOrUpdateBkbsssStudentObtain(BkbsssStudentObtain bkbsssStudentObtain);

    Page<BkbsssStudentObtain> selectAllBkbsssStudentObtainVOs(BkbsssStudentObtainReqVo bkbsssStudentObtainReqVo,Page<BkbsssStudentObtain> page);

    BkbsssStudentObtainReqVo selectBkbsssStudentObtainById(@Param("id") Long id);

    ResponseEntity<byte[]> DataDowload(List<String> ids);

    int batchUpdateMailing(BkbsssStudentObtainReqVo bkbsssStudentObtainReqVo);
}
